<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:tns="http://tempuri.org/" elementFormDefault="qualified" targetNamespace="http://tempuri.org/" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import schemaLocation="http://localhost:49586/VSService.svc?xsd=xsd1" namespace="http://schemas.microsoft.com/2003/10/Serialization/" />
  <xs:import schemaLocation="http://localhost:49586/VSService.svc?xsd=xsd2" namespace="http://schemas.datacontract.org/2004/07/AbstraX.Contracts" />
  <xs:import schemaLocation="http://localhost:49586/VSService.svc?xsd=xsd3" namespace="http://schemas.datacontract.org/2004/07/VSService" />
  <xs:element name="OpenSession">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q1="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="userID" type="q1:guid" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="OpenSessionResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="CloseSession">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q2="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="userID" type="q2:guid" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="CloseSessionResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="RegisterInstance">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q3="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="userID" type="q3:guid" />
        <xs:element minOccurs="0" name="processID" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="RegisterInstanceResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="OpenVisualStudio">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q4="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="userID" type="q4:guid" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="OpenVisualStudioResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="UnRegisterInstance">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q5="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="userID" type="q5:guid" />
        <xs:element minOccurs="0" name="processID" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="UnRegisterInstanceResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="OpenVSSolution">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q6="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="userID" type="q6:guid" />
        <xs:element minOccurs="0" name="fileName" nillable="true" type="xs:string" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="OpenVSSolutionResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q7="http://schemas.datacontract.org/2004/07/AbstraX.Contracts" minOccurs="0" name="OpenVSSolutionResult" nillable="true" type="q7:VSSolution" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ReturnOpenVSSolution">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q8="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="userID" type="q8:guid" />
        <xs:element xmlns:q9="http://schemas.datacontract.org/2004/07/AbstraX.Contracts" minOccurs="0" name="solution" nillable="true" type="q9:VSSolution" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ReturnOpenVSSolutionResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetProjects">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q10="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="userID" type="q10:guid" />
        <xs:element xmlns:q11="http://schemas.datacontract.org/2004/07/AbstraX.Contracts" minOccurs="0" name="solution" nillable="true" type="q11:VSSolution" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetProjectsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q12="http://schemas.datacontract.org/2004/07/AbstraX.Contracts" minOccurs="0" name="GetProjectsResult" nillable="true" type="q12:ArrayOfVSProject" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ReturnGetProjects">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q13="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="userID" type="q13:guid" />
        <xs:element xmlns:q14="http://schemas.datacontract.org/2004/07/AbstraX.Contracts" minOccurs="0" name="projects" nillable="true" type="q14:ArrayOfVSProject" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ReturnGetProjectsResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetMessage">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q15="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="userID" type="q15:guid" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetMessageResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q16="http://schemas.datacontract.org/2004/07/AbstraX.Contracts" minOccurs="0" name="GetMessageResult" nillable="true" type="q16:VSMessage" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetSessions">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetSessionsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q17="http://schemas.datacontract.org/2004/07/VSService" minOccurs="0" name="GetSessionsResult" nillable="true" type="q17:ArrayOfVSServiceSession" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetModels">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q18="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="userID" type="q18:guid" />
        <xs:element xmlns:q19="http://schemas.datacontract.org/2004/07/AbstraX.Contracts" minOccurs="0" name="project" nillable="true" type="q19:VSProject" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetModelsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q20="http://schemas.datacontract.org/2004/07/AbstraX.Contracts" minOccurs="0" name="GetModelsResult" nillable="true" type="q20:ArrayOfVSProjectItem" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ReturnGetModels">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q21="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="userID" type="q21:guid" />
        <xs:element xmlns:q22="http://schemas.datacontract.org/2004/07/AbstraX.Contracts" minOccurs="0" name="models" nillable="true" type="q22:ArrayOfVSProjectItem" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ReturnGetModelsResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
  <xs:element name="GetFileContents">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q23="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="userID" type="q23:guid" />
        <xs:element xmlns:q24="http://schemas.datacontract.org/2004/07/AbstraX.Contracts" minOccurs="0" name="projectItem" nillable="true" type="q24:VSProjectItem" />
        <xs:element minOccurs="0" name="index" type="xs:int" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="GetFileContentsResponse">
    <xs:complexType>
      <xs:sequence>
        <xs:element minOccurs="0" name="GetFileContentsResult" nillable="true" type="xs:base64Binary" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ReturnGetFileContents">
    <xs:complexType>
      <xs:sequence>
        <xs:element xmlns:q25="http://schemas.microsoft.com/2003/10/Serialization/" minOccurs="0" name="userID" type="q25:guid" />
        <xs:element minOccurs="0" name="contents" nillable="true" type="xs:base64Binary" />
      </xs:sequence>
    </xs:complexType>
  </xs:element>
  <xs:element name="ReturnGetFileContentsResponse">
    <xs:complexType>
      <xs:sequence />
    </xs:complexType>
  </xs:element>
</xs:schema>